package com.jt.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jt.pojo.Item;

public interface ItemMapper extends BaseMapper<Item>{

	@Select("select * from tb_item order by updated desc limit #{startIndex},#{rows}")
	List<Item> findItemByPage(int startIndex, Integer rows);

	/**
	 * Mybatis需要将参数封装为Map
	 * 	因为mybatis规定 一般的参数只能进行单值传参，不能多值传参
	 * 	为了解决多值传参的问题，mybatis提供了@Param注解，其作用将参数封装为Map集合
	 *
	 * @param ids Long[] ids 是将参数封装为Map集合，其中@Params其中的ids当做key，参数当做value
	 */

	//此处使用了mybatis提供的@param注解将参数封装为map集合，如果不加这个注解，xml文件中应该写的就是array
    void deleteItems(@Param("ids") Long[] ids);

    //mybatis需要将多值转换为单值，随着mybatis的更新，
	//它会自动为你的多值添加@param注解，完成封装
	void updateStatus(Long[] ids, Integer status);
}
